package com.bt.lms.entity;


import java.time.LocalDate;

import java.util.List;

/**
 * 学员报名信息
 * @author 朱传博
 */
public class RegStuInfo {

    /**
     * 报名学员的id
     */

    private Long id;

    /**
     * 报名编号
     * @reqRule 非必填，文本（小），自动生成
     */

    private String registrationCode;

    /**
     * 姓名
     * @reqRule 必填：是，文本(小)
     */

    private String name;

    /**
     * 性别 0：【男】、1【女】
     * @reqRule 必填：是，单 限选项（男、女） 默认值（男）
     */

    private Integer gender;

    /**
     * 出生日期
     * @reqRule 必填，日期（yyyy-MM-dd   年-月-日）
     */

    private LocalDate birthday;

    /**
     * 证件类型
     * @reqRule 必填，单 限选项（身份证、军官证）,默认值（身份证）
     */

    private Integer credType;

    /**
     * 证件号码
     * @reqRule 必填，文本（小）,规则【身份证：18位（如果最后一位是字母，需大写）、军官证：7位】
     */

    private String credNo;


    /**
     * 电子邮箱
     * @reqRule 必填，文本（小),
     */

    private String email;

    /**
     * 移动电话
     * @reqRule 必填,文本（小，需数字）
     */

    private String mobilePhone;



    /**
     * 报名方式  :1.在线报名、2：线下报名
     * @reqRule 必填，单 限选项（在线报名、线下报名），默认值（在线报名）
     */

    private Integer reqWay;

    /**
     * 报名材料状态  1：已完整提交、2：未完整提交
     * @reqRule 必填，单 限选项（已完整提交,未完整提交），默认值（未完整提交）
     */

    private Integer regMaterialStatus;

    /**
     * 邮箱状态 1:已验证、  2：未验证
     * @reqRule 必填，单 限选项（已验证,未验证），默认值（未验证）
     */

    private Integer emailStatus;

    /**
     * 帐号状态 1：已激活、  2：未激活
     * @reqRule 必填，单 限选项（已激活，未激活），默认值（未激活）
     */

    private Integer accountStatus;

    /**
     * qq
     */
    private String qq;


    /**
     * 微信
     */
    private String wechat;

    /**
     * 身份证url
     */
    private String idCardUrl;

    /**
     * 个人照片url
     */
    private String phoneUrl;



    //----------外键
    /**
     * 招生计划
     */
    private EnrollmentPlan enrollmentPlan;



    /**
     * 报名材料信息*
     */
    private List<RegStuMaterial> regStuMaterials;



    /**
     * 学员录取记录
     */
    private StuAdmissionInfo stuAdmissionInfo;



    //-----------外键


    /**
     * 招生计划id
     */

    private Long enpID;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getRegistrationCode() {
        return registrationCode;
    }

    public void setRegistrationCode(String registrationCode) {
        this.registrationCode = registrationCode;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getGender() {
        return gender;
    }

    public void setGender(Integer gender) {
        this.gender = gender;
    }

    public LocalDate getBirthday() {
        return birthday;
    }

    public void setBirthday(LocalDate birthday) {
        this.birthday = birthday;
    }

    public Integer getCredType() {
        return credType;
    }

    public void setCredType(Integer credType) {
        this.credType = credType;
    }

    public String getCredNo() {
        return credNo;
    }

    public void setCredNo(String credNo) {
        this.credNo = credNo;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getMobilePhone() {
        return mobilePhone;
    }

    public void setMobilePhone(String mobilePhone) {
        this.mobilePhone = mobilePhone;
    }

    public Integer getReqWay() {
        return reqWay;
    }

    public void setReqWay(Integer reqWay) {
        this.reqWay = reqWay;
    }

    public Integer getRegMaterialStatus() {
        return regMaterialStatus;
    }

    public void setRegMaterialStatus(Integer regMaterialStatus) {
        this.regMaterialStatus = regMaterialStatus;
    }

    public Integer getEmailStatus() {
        return emailStatus;
    }

    public void setEmailStatus(Integer emailStatus) {
        this.emailStatus = emailStatus;
    }

    public Integer getAccountStatus() {
        return accountStatus;
    }

    public void setAccountStatus(Integer accountStatus) {
        this.accountStatus = accountStatus;
    }

    public String getQq() {
        return qq;
    }

    public void setQq(String qq) {
        this.qq = qq;
    }

    public String getWechat() {
        return wechat;
    }

    public void setWechat(String wechat) {
        this.wechat = wechat;
    }

    public EnrollmentPlan getEnrollmentPlan() {
        return enrollmentPlan;
    }

    public void setEnrollmentPlan(EnrollmentPlan enrollmentPlan) {
        this.enrollmentPlan = enrollmentPlan;
    }

    public List<RegStuMaterial> getRegStuMaterials() {
        return regStuMaterials;
    }

    public void setRegStuMaterials(List<RegStuMaterial> regStuMaterials) {
        this.regStuMaterials = regStuMaterials;
    }

    public StuAdmissionInfo getStuAdmissionInfo() {
        return stuAdmissionInfo;
    }

    public void setStuAdmissionInfo(StuAdmissionInfo stuAdmissionInfo) {
        this.stuAdmissionInfo = stuAdmissionInfo;
    }

    public Long getEnpID() {
        return enpID;
    }

    public void setEnpID(Long enpID) {
        this.enpID = enpID;
    }

    public String getIdCardUrl() {
        return idCardUrl;
    }

    public void setIdCardUrl(String idCardUrl) {
        this.idCardUrl = idCardUrl;
    }

    public String getPhoneUrl() {
        return phoneUrl;
    }

    public void setPhoneUrl(String phoneUrl) {
        this.phoneUrl = phoneUrl;
    }
}
